The cerebral cortex is believed to be the seat of cognition. Unraveling the computational and operational function of the cortex is a grand challenge with enormous implications for cognitive computing. Large-scale computerized cortical simulations provide one avenue for computationally exploring hypotheses about how the cortex works, what it computes, and how, eventually, it may be mechanized.
A simple view of the cortex is that it consists of discrete neurons. Each neuron receives inputs from thousands of other neurons via its dendrites and, in turn, connects to thousands of other neurons via its axon. The point of contact between an axon of a neuron and a dendrite on another neuron is called a synapse. With respect to the synapse, the two neurons are respectively called pre-synaptic (the sending neuron) and post-synaptic (the receiving neuron). If some event such as an incoming stimulus causes the neuron membrane potential to rise above a certain threshold, the neuron will “fire”, sending a spike down its axon. All the synapses that the axon contacts are then activated after an “axonal conductance delay”. A neuron can be excitatory, meaning that its firing makes those neurons whose synapses it contacts more likely to fire. Or, a neuron can be inhibitory, meaning that its firing makes those neurons whose synapses it contacts less likely to fire.
Synapses made by excitatory neurons are plastic, i.e., the effect of their activation on the corresponding post-synaptic neuron is subject to change over time using a plasticity rule such as spike-timing dependent plasticity (STDP). A STDP rule potentiates (increases the weight of) a synapse if its post-synaptic neuron fires after its presynaptic neuron fires, and depresses (decreases the weight of) a synapse if the order of two firings is reversed.
As understood herein, to study emergent dynamics and information-processing capacity of large networks of spiking neurons, the simulation network scale is essential. Scale is also important to incorporate distance-dependent axonal conductance delays. As also understood herein, in trying to understand the computational function of the cortex, several hypotheses regarding network topologies, neuron/synapse models, etc., need to be tried out quickly. In addition, to achieve steady state, some simulation experiments may need to run for a long time, such as twenty four hours of simulated time. Thus, simulation time is also of essence.
The present invention critically recognizes that the following challenge exists. The total surface area of the two hemispheres of the rat cortex is roughly six hundred square millimeters, and the number of neurons under each square millimeter of the mouse cortex, which is about the same as the rat cortex, is roughly 92,000, for a total of over fifty million neurons. Taking the number of synapses per neuron to be around eight thousand, there are roughly four hundred billion synapses in the rat cortex.
In view of the above challenge, the present invention further critically recognizes that simulations at this scale in near real-time impose tremendous constraints on computation, communication, and memory capacity of any computing platform. For example, assuming that neurons fire at an average rate once per second, each neuron would communicate with each of its synaptic targets once a second, resulting in an average total of four hundred billion messages per second. Moreover, roughly 80% of the cortical neurons are excitatory, and the state of the synapses made by these excitatory neurons must be updated once a second as per the above-mentioned STOP. For near real-time performance for these synaptic updates, all synapses must fit within the main memory of the system. Finally, in a discrete-event simulation setting, the state of all neurons must be updated every simulation time step which could be 1 millisecond or shorter. At the complexity of neurons and synapses envisioned herein, the computation, communication, and memory requirements all scale with the number of synapses which outnumber the number of neurons by a factor of eight thousand.